DART Forest Scene Setup Tutorial

Author

DART Tutorial

Published

December 16, 2025

1 Overview

This tutorial provides a step-by-step guide for setting up a forest scene simulation in DART (Discrete Anisotropic Radiative Transfer). DART is a comprehensive 3D radiative transfer model designed for simulating radiative budget and remote sensing acquisitions of natural and urban landscapes. This tutorial focuses on creating a high-resolution forest scene with detailed 3D tree models and proper optical properties.

2 Prerequisites

Before starting this tutorial, ensure you have:

  • DART software installed (Version 5.10.5 or later)
  • The DART_forest_scene.zip file containing all necessary input files
  • Basic understanding of radiative transfer modeling
  • Sufficient computational resources (12-core processor recommended)
NoteAbout DART

DART is developed by the CESBIO laboratory (Centre d’Etudes Spatiales de la BIOsphère) and provides both forward and inverse modeling capabilities for optical remote sensing. For more information, visit the DART manual.

3 Part 1: Initial Setup

3.1 Extracting and Organizing Files

The first step is to properly organize the DART project files:

ImportantFile Organization

Extract the DART_forest_scene.zip file and copy all contents except the DART_directory/user_data/simulations/forest_scene/input folder to your DART installation directory. The structure should look like:

  • DART/database ← Copy database files here
  • DART/user_data ← Copy other files here (except input folder)

This ensures all necessary optical properties, 3D models, and configuration files are in the correct locations.

3.2 Creating a New Simulation

To begin your forest scene simulation:

  1. Open DART
  2. Click on Simulation → New Simulation
  3. Enter your simulation name (e.g., “forest_scene”)
  4. Click “New”
Figure 1: DART main menu showing the Simulation options and New Simulation dialog

As shown in Figure 1, the dialog allows you to specify the simulation name and location within your simulations folder.

TipSimulation Management Tips
  • Keep all simulations in the default simulations folder for easier management
  • You can create folder structures within the simulations directory
  • Use “Choose Simulations…” if you have an existing simulation to import
  • Use descriptive names for your simulations for easy identification

3.3 Opening the Editor

After creating your simulation:

  1. Click on Parameters → Editor
  2. The DART Simulation Editor window will open
  3. You’re now ready to configure your simulation parameters
Figure 2: Opening the DART Editor from Parameters menu

The Editor interface (Figure 2) provides access to all simulation parameters through an organized tree structure on the left side of the window.

4 Part 2: Core Simulation Parameters

4.1 Basic Configuration

The first configuration screen allows you to set fundamental simulation parameters:

Figure 3: DART Editor showing basic configuration parameters including atmosphere settings, advanced mode, and thread configuration
ImportantCritical Settings

Atmosphere Simulation: - Enable atmosphere simulation even if you only need “bottom of atmosphere” products - This ensures more accurate radiative transfer calculations

Threading Configuration: - Switch to Advanced Mode - Set Number of threads in DART tracking to 12 - This optimizes performance on multi-core systems

Radiative Transfer Mode: - For high spatial resolution forest scenes, use bi-directional Light propagation mode (DART Lux) - This provides the most accurate and computationally efficient results for detailed 3D scenes

These settings are highlighted in Figure 3.

NotePython Integration

The DART team provides Python scripts that can be implemented directly in DART or used for data preparation. These scripts offer additional automation capabilities. Refer to the DART manual for more details on Python integration.

4.2 Spectral Band Configuration

Configure the spectral bands for your simulation:

  1. Right-click on “Spectral intervals”
  2. Select Add… → Spectral band
  3. Add four spectral bands with the following specifications:
Band Number Mode Central Wavelength (μm) Bandwidth (μm)
0 Mode R 0.56 0.032
1 Mode R 0.65 0.032
2 Mode R 0.73 0.032
3 Mode R 0.85 0.052
Figure 4: Configuration dialogs for four spectral bands showing Mode, Central wavelength, and Spectral bandwidth parameters

Figure 4 shows the configuration windows for all four spectral bands. Each band is set to Mode R (reflectance) with specific central wavelengths and bandwidths appropriate for vegetation monitoring.

TipWorking with Multiple Bands
  • For larger numbers of spectral bands, use “Add range of…” method
  • If bands have varying bandwidths, directly modify the $your_simulation_name/input/phase.xml file
  • This approach is more efficient for hyperspectral simulations

5 Part 3: Scene Configuration

5.1 Bi-directional Parameters

Configure the image rendering and computation parameters:

Figure 5: Bi-directional parameters panel showing pixel size, rendering settings, and radiative budget options
ImportantKey Parameters

Image Resolution: - Set Target pixel size [m] to 0.05 (5 cm) - This provides high-resolution output suitable for detailed analysis

Optimized Parameters: These values are results of optimization and consultation with the DART team: - Target sample density per pixel (images): 50 - Maximal rendering time per image: 2000 - Number of repetitions of the user-defined scene: 1

Radiation Settings: - Sampler: Sobol - Russian Roulette Acceleration: Enable (checked)

Periodic Save: - Periodic save method: No periodic save

All these parameters are shown in Figure 5 with their recommended values highlighted.

NoteParameter Optimization

When starting a new simulation type, it’s recommended to verify these parameters for your specific: - Scene type (forest, urban, agricultural) - Spatial resolution requirements - Spectral resolution needs

Parameter optimization can significantly affect both accuracy and computation time.

5.2 Output Products Configuration

Configure which products DART will generate:

  1. Navigate to Products → BRF/BTF
  2. Enable “Write BRF/BTF files and maps”
  3. Set Type of color/model of Earth scene element: Reflectance/Temperature
  4. Configure Images - stored per band (folder):
    • Format: Ilwis (.mpr) and netcdf (.nc)
    • Maximum VZA for storing images: 1.0
  5. Disable Sensor plane images
Figure 6: Products configuration panel showing BRF/BTF settings and image format options

As shown in Figure 6, only the necessary outputs are enabled to minimize computation time and storage requirements.

TipOutput Format
  • DART is transitioning to netcdf as the primary output format
  • Ilwis format is included here for compatibility with this tutorial
  • Additional products can be enabled but will increase computation time and storage requirements
  • Only enable the products you actually need for your analysis

6 Part 4: Optical Properties

6.1 Leaf Optical Properties

Define the spectral properties of leaves using the PROSPECT model:

  1. Right-click on “Lambertian” section
  2. Select Add → Lambertian (or modify the default)
  3. Configure the following:

Basic Settings: - Lambertian property name: “leaves” - Disable “Multiplicative factor for database” - Enable “Reflectance, transmittance” in the Prospect section

PROSPECT Parameters: Use the PROSPECT leaf radiative transfer model with these default biochemical parameters: - Structure coefficient: 1.5 - Chlorophyll: 40 - Carotenoid: 10 - Brown pigment: 0.0 - Equivalent water thickness: 0.012 - Anthocyanin: 0 - Dry matter content: Dry matter content

Figure 7: Lambertian optical properties configuration for leaves using PROSPECT model with biochemical parameters

Figure 7 demonstrates the complete PROSPECT configuration for leaf optical properties, including all biochemical parameters that drive the spectral response.

NotePROSPECT Model

The PROSPECT model is a leaf-level radiative transfer model that simulates leaf optical properties based on biochemical composition. These parameters will be used for: - Look-Up Table (LUT) generation - Parameter retrieval from remote sensing images - Sensitivity analysis

The multiplicative factor option allows scaling of optical properties by a constant value when needed.

6.2 Bark Optical Properties

Define spectral properties for tree bark:

  1. Right-click on “Lambertian”
  2. Select Add → Lambertian
  3. Configure:

Database Selection: - Lambertian property name: “bark” - Disable “Multiplicative factor for database” - 2D lambertian database: Select lanzhot_materials.db - 2D lambertian model: Select trunk_FA_SY_QE_sp_Lanzhot_fix

Figure 8: Lambertian optical properties configuration for bark using measured spectral data from lanzhot_materials database

The bark optical properties (Figure 8) use measured spectral reflectance data from the Lanzhot forest site, providing realistic bark reflectance characteristics.

TipOptical Property Databases
  • The lanzhot_materials.db file should be in your DART/database folder (from the extracted zip)
  • You can also use optical properties from DART’s default Lambertian_vegetation.db
  • Use DART Database Manager (Tools menu) to create or modify optical property databases
  • Measured optical properties provide more realistic simulations than generic values

6.3 Ground Optical Properties

Define the forest floor spectral properties:

  1. Right-click on the bark optical properties
  2. Select Duplicate
  3. Modify:
    • Lambertian property name: “ground”
    • 2D lambertian model: Select forestfloor_LZ_mod_fix_txt
Figure 9: Lambertian optical properties configuration for ground/forest floor using forestfloor spectral data

This creates optical properties representing the forest understory and leaf litter, as shown in Figure 9.

7 Part 5: Earth Scene Configuration

7.1 Scene Dimensions and Location

Set up the basic scene parameters:

Scene Dimensions: - X max: 30 m - Y max: 30 m

Ground Properties: - Optical property name: “ground”

Geographic Location: Set coordinates for central Czech Republic: - Altitude of the DEM zero level: 500 m - Latitude: [50°; 30’] - Longitude: [17°; 50’]

Figure 10: Earth Scene configuration panel showing scene dimensions, ground optical properties, and geographic location

Figure 10 displays the complete Earth Scene configuration, including the scene extent, ground properties, and geographic coordinates that define the simulation environment.

NoteScene Configuration Options

Exactly Periodic Scene: - Isolated scene: Light crossing edges disappears (boundary effects) - Repetitive scene: Scene is virtually replicated around the edges (reduces boundary effects) - Infinite slope: Appropriate for sloped terrain

Cell Dimensions: - These parameters are irrelevant for bi-directional mode - In other modes, they correspond to simulated image spatial resolution

8 Part 6: 3D Scene Objects

8.1 Importing Tree Field Data

Add the tree locations and specifications:

  1. Right-click on “Object fields”
  2. Select Add → Field
  3. Field description file: Select beech.txt (from the extracted zip)
  4. Name: “Field”
  5. Enable “Show this field’s objects in the 2D view”
Figure 11: Field import dialog showing the beech.txt file selection and configuration options

Figure 11 shows the field import interface where you specify the text file containing tree positions and properties.

NoteField File Format

The beech.txt file contains information for each tree: - Species/object type identifier - XY position coordinates - Scaling factor (tree size) - Rotation angles

This format allows efficient specification of multiple objects without manually placing each one. Refer to the DART manual for detailed file format specifications.

8.2 Importing 3D Tree Models

Import the first tree model:

  1. Right-click on “3D Models”
  2. Select Import file
  3. Choose the first 3D object file: beech_20 (from extracted files)

Configuration: - Name: “beech_20” - Color: Select a distinctive color (e.g., orange) - Keep other options at default

Figure 12: 3D model import interface showing file selection, naming options, and display settings for the beech_20 tree model

The 3D model import dialog (Figure 12) allows you to specify the model file, assign a name, and configure display properties including color coding for easy identification in the 2D view.

Tip3D Object Creation

DART includes a “Creation of 3D objects” tool for generating simple geometric crown shapes filled with leaf facets. While less detailed than full 3D scanned models, this can be sufficient for many applications and is computationally efficient.

8.3 Configuring Leaf Groups

For the leaves group within the 3D object:

  1. Expand the tree model in the hierarchy
  2. Select the leaves group
  3. Configure:

Group Settings: - Name: “leaves” - Enable “Double face”

Optical Properties: - Type of optical property: Lambertian - Optical property name: “leaves”

Display: - Group’s color: Leaf (green)

Figure 13: Leaves group configuration showing double face option, optical property assignment, and the 2D view with colored tree crowns

Figure 13 demonstrates the leaves group configuration within the 3D object hierarchy, with the 2D view showing the spatial distribution of trees in the scene.

ImportantDouble Face Option

The “Double face” option is critical for leaves. It ensures: - Both sides of leaf facets have optical properties - Proper simulation of leaf transmittance - Accurate light scattering within the canopy

Without this option, the back face of leaves would be transparent, leading to incorrect radiative transfer calculations.

NoteTurbid Medium Alternative

The “Used to create turbid or fluid volume” option converts 3D objects into a turbid medium representation. This is useful for: - Easily changing LAI values without multiple 3D models - Computational efficiency in some cases

However, it reduces spatial accuracy and makes bi-directional mode less efficient. Use only when appropriate for your application.

8.4 Configuring Woody Parts

For the trunk and branches group:

  1. Select the wooden parts group
  2. Configure:

Group Settings: - Name: “wooden_parts” - Enable “Double face” ✓ (recommended)

Optical Properties: - Type of optical property: Lambertian - Optical property name: “bark”

Display: - Group’s color: Trunk (brown)

Figure 14: Woody parts group configuration showing optical property assignment to bark and the 2D scene view

The woody parts configuration (Figure 14) assigns bark optical properties to trunk and branch components of the tree model.

TipDouble Face for Woody Parts

For trunks and branches with no transmittance, double face is technically unnecessary if all facet normals are correctly oriented. However, enabling it is safer unless you’re certain about facet orientation, as it prevents rendering artifacts.

8.5 Adding All Tree Models

Repeat the import and configuration process for all remaining 3D tree models:

  • beech_27
  • beech_28
  • beech_62

For each model: 1. Import the 3D file 2. Set a unique name 3. Assign a distinctive color for visualization 4. Configure leaf groups with “leaves” optical properties 5. Configure woody groups with “bark” optical properties 6. Enable double face for both groups

Figure 15: Complete 2D view of the forest scene showing all imported tree models as colored circles representing different tree types and sizes
NoteVisualization

When all models are imported and configured, the 2D editor view (Figure 15) displays colored circles representing tree crowns at their specified locations. Different colors help distinguish between different tree models or size classes. The spatial distribution shown here matches the specifications in the beech.txt field file.

9 Part 7: Atmospheric Configuration (Optional)

The atmosphere section provides detailed control over atmospheric radiative transfer:

Figure 16: Atmosphere configuration panel showing atmospheric database selection, gas profiles, aerosol properties, and advanced mode settings

10 Atmospheric Parameters

If you have measured or observed atmospheric data, you can configure:

Atmosphere Database: - Select appropriate atmospheric model (e.g., BIRND_JULY2020.db)

Gas Composition: - Temperature profile (US standard models available) - Ozone and other gas vertical profiles - CO2 mixing ratio - Water vapor content

Aerosol Properties: - Set gas amounts (H2O, CO2) - Configure aerosol optical depth - Define atmospheric components (Downward fluxes, Upward fluxes)

Advanced Settings: - Atmosphere extrapolation parameters - Scattering threshold - Maximum scattering iteration number - Atmosphere geometry (discretization, sensor layer altitude)

These parameters (Figure 16) significantly affect top-of-atmosphere and atmospheric correction simulations.

11 Part 8: Running the Simulation

11.1 Saving and Validation

Before running:

  1. Click the Save button in the Editor
  2. Verify no error messages appear
  3. Review the 2D scene view to confirm proper placement
  4. Close the Editor

11.2 Running DART Modules

Execute the simulation:

  1. In the main DART window, click Run → DART
  2. This runs all four modules in sequence:
    • Direction: Calculates sun and viewing geometry
    • Phase: Processes spectral and optical properties
    • Maket: Constructs the 3D scene
    • Dart: Performs radiative transfer calculations
Figure 17: DART Run menu showing all available modules including Direction, Phase, Maket, Dart, and auxiliary tools

Figure 17 displays the Run menu with all DART modules. The execution order is important, as each module depends on the outputs of previous modules.

ImportantModule Dependencies

First Run: - All modules must be executed

Subsequent Runs: - Only run modules affected by parameter changes - Module dependencies: - Direction: Affects sun/sensor geometry - Phase: Affects spectral bands and optical properties - Maket: Affects scene structure and objects - Dart: Affected by all previous modules

This selective execution saves considerable computation time during parameter optimization.

TipComputation Time

Expected computation times vary based on: - Number of spectral bands (currently 4) - Scene complexity (30m × 30m with multiple trees) - Spatial resolution (5 cm pixels) - Number of threads (12 recommended)

For this configuration, expect 30-60 minutes on a modern 12-core system.

12 Part 9: Sequence Launcher for LUT Generation

The Sequence Launcher is a powerful tool for generating Look-Up Tables (LUTs) by systematically varying parameters:

12.1 Setting Up a Sequence

  1. Click Run → SequenceLauncher
  2. Click “Create sequence”
  3. Click “Add”
  4. Select parameters to vary:
    • Navigate through the parameter tree
    • Select optical properties or structural parameters
    • Define the range of values
Figure 18: Sequence Launcher interface showing (left) execution progress, (center) parameter selection tree, and (right) process configuration options

Figure 18 shows the complete Sequence Launcher workflow, including the parameter selection dialog, the properties group details window, and the main processes configuration panel where you can specify which DART modules to run and how many simulations to execute in parallel.

12.2 Configuration Options

Parameter Selection: Choose which parameters to vary, such as: - PROSPECT biochemical parameters (Chlorophyll, LAI, etc.) - Structural parameters (tree dimensions, densities) - Atmospheric conditions - Sun angles

Process Configuration: In Preferences → Process and threads to run: - Select which modules to run (based on changed parameters) - Set number of parallel simulations - Each simulation uses the specified number of threads

TipParallel Processing

Example configuration for 12-core system: - Threads per simulation: 3 - Parallel simulations: 4 - Total thread usage: 12

Balance parallel simulations and threads per simulation based on your system’s capabilities and memory.

12.3 Running the Sequence

  1. Click “Prepare and run sequence”
  2. Monitor progress in the console window
  3. Results will be saved in numbered subdirectories
NoteLUT Applications

Generated LUTs are valuable for: - Parameter retrieval from remote sensing data - Sensitivity analysis - Model inversion - Uncertainty quantification - Training machine learning models

The systematic parameter variation creates a database relating scene parameters to simulated reflectance.

13 Summary and Best Practices

Essential Steps: - Proper file organization in DART directories - Careful spectral band configuration - Appropriate spatial resolution for application - Realistic optical properties from measurements

Common Mistakes to Avoid: - Forgetting to enable double face for leaves - Incorrect spectral bandwidth settings - Insufficient spatial resolution - Isolated scene boundaries causing edge effects

Best Practices: - Use measured optical properties when available - Validate PROSPECT parameters against lab measurements - Consider seasonal variations in leaf properties - Document all optical property sources

Considerations: - Bark properties vary by species and condition - Understory optical properties affect overall scene reflectance - Leaf age and health influence biochemical parameters

Optimization Strategies: - Use appropriate thread count for your system - Enable Russian Roulette acceleration - Optimize rendering time parameters - Only generate needed output products - Use periodic scene boundaries to reduce edge effects

Resource Requirements: - RAM: 16-32 GB recommended for large scenes - Storage: Plan for large output files (GB per simulation) - CPU: Multi-core processor essential for reasonable run times

Validation Steps: - Visual inspection of 2D scene layout - Check for error messages in Editor - Verify spectral signatures are realistic - Compare with field measurements if available - Test with simplified scenes first

Troubleshooting: - Save frequently during setup - Test with single spectral band initially - Use smaller scene for parameter testing - Check DART manual for error messages

14 Advanced Topics

14.1 Custom 3D Objects

Creating your own tree models:

Tip3D Object Requirements

DART accepts 3D objects in several formats: - OBJ (most common) - PLY - FBX (with conversion)

Requirements: - Properly defined groups (leaves, trunk, branches) - Correct facet normals - Reasonable polygon count (balance detail vs. computation) - Separate materials for different components

14.2 Python Integration

DART supports Python scripting for:

  • Automated parameter sweeps
  • Custom scene generation
  • Post-processing workflows
  • Integration with other tools

See the DART manual for Python API documentation.

14.3 Atmosphere Modeling

For detailed atmospheric studies:

  • Use measured atmospheric profiles when available
  • Consider aerosol optical depth variations
  • Account for water vapor absorption
  • Validate against AERONET data

14.4 Validation Approaches

Recommended validation methods:

  1. Lab measurements: Compare PROSPECT outputs to spectroradiometer data
  2. Field campaigns: Validate scene reflectance with handheld or UAV spectrometers
  3. Cross-comparison: Compare with other radiative transfer models (PROSAIL, librat)
  4. Sensitivity analysis: Use Sequence Launcher to assess parameter impacts

15 Additional Resources

NoteLearning Resources

DART Documentation: - Official DART Website - User manual (included with installation) - Tutorial collection - Forum for user questions

Scientific Background: - Gastellu-Etchegorry et al. publications on DART methodology - Remote sensing textbooks on radiative transfer - PROSPECT model documentation

Community: - DART user mailing list - Annual DART training workshops - CESBIO laboratory contacts

WarningImportant Considerations

Model Limitations: - DART is computationally intensive for large scenes - Accuracy depends on input data quality - Simplified atmospheric models may not capture all effects - 3D object complexity affects computation time

Data Requirements: - Accurate 3D scene geometry - Validated optical properties - Appropriate atmospheric parameters - Sufficient computational resources

Application Scope: DART is suitable for: ✓ Forest and vegetation studies ✓ Urban remote sensing ✓ Precision agriculture ✓ Sensor design and testing

May be excessive for: ✗ Simple BRDF calculations (use simpler models) ✗ Very large spatial extents (consider other approaches) ✗ Real-time applications (computation time prohibitive)

16 Conclusion

This tutorial has walked through the complete workflow for setting up a forest scene simulation in DART. The combination of detailed 3D objects, measured optical properties, and physically-based radiative transfer provides a powerful tool for remote sensing research and application development.

Key takeaways:

  1. Proper setup is crucial: Careful attention to file organization, optical properties, and scene configuration ensures successful simulations
  2. Bi-directional mode is optimal: For high-resolution 3D scenes, DART Lux provides the best balance of accuracy and efficiency
  3. Validation is essential: Compare simulations with field measurements whenever possible
  4. Sequence Launcher enables systematic analysis: Use this tool for parameter studies and LUT generation
  5. Computational resources matter: Plan for significant computation time and storage requirements

The skills developed in this tutorial provide a foundation for more advanced DART applications, including multi-temporal studies, sensor simulation, and parameter retrieval from remote sensing data.


This tutorial is based on DART version 5.10.5. While the core concepts remain consistent across versions, specific interface details may vary. Always refer to the official DART documentation for the most current information.

17 Appendix: Common Issues and Solutions

Problem: DART won’t start - Check Java installation (required) - Verify environment variables - Run from command line for error messages

Problem: Database files not found - Verify file paths in simulation settings - Check that extracted files are in correct DART directories - Use absolute paths if relative paths fail

Problem: Out of memory errors - Reduce scene size or resolution - Decrease number of threads - Increase Java heap size in DART configuration

Problem: Very slow execution - Verify thread count settings - Check for excessive output products - Consider using coarser resolution for testing

Problem: Images not generated - Check “Products” configuration - Verify maximal VZA settings - Ensure sufficient disk space - Check write permissions

Problem: Unexpected spectral values - Verify optical property assignments - Check for missing double face settings - Validate PROSPECT parameters

Problem: Trees not visible in 2D view - Enable “Show this field’s objects in the 2D view” - Check field file format and paths - Verify tree positions are within scene bounds

Problem: Optical properties not applied - Confirm optical property names match - Check database file paths - Verify group assignments in 3D objects